﻿using System;
using System.Collections;

namespace BaseSyntax.Collection.EnumrableTest
{
	public class ClassDefine
	{
		// 类需要有GetEnumerator方法，返回类型为IEnumerator
		public IEnumerator GetEnumerator()
		{
			for (int i = 0; i < 10; i++)
			{
				Console.WriteLine("aa");

				if (i == 4)
				{
					// break会直接终止方法，相当于普通的return
					yield break;
				}
				
				// break 也会中断当前循环
				if (i == 3)
				{
					break;
				}
				yield return i;
			}
		}

		public void test()
		{
			ClassDefine cd = new ClassDefine();
			foreach (int i in cd)
			{
				Console.WriteLine(i);
			}
		}
	}
}